package com.duoec.magichour.mapper;

import com.duoec.magichour.core.BaseMapper;
import com.duoec.magichour.pojo.Sms;
import org.apache.ibatis.annotations.Param;

import java.util.Date;

public interface SmsMapper extends BaseMapper<Sms, Long> {
    /**
     * 通过手机号码、类型，获取有效期内的短信
     * @param mobile 手机号码
     * @param messageType 短信类型
     * @param time 时间点（有效期大于此时间点）
     * @return
     */
    Sms getByType(@Param("mobile") String mobile, @Param("messageType") byte messageType, @Param("time") Date time);

    /**
     * 验证码错误次数 +1
     * @param id sms.id
     */
    void incErrorCount(@Param("id") Long id);

    /**
     * 设置为已用
     * @param id sms.id
     */
    void used(@Param("id") Long id);
}